The motion pictures experts group (MPEG) defines a standard for compressing and restoring motion pictures. The MPEG techniques may compress motion pictures with the parameters of temporal and spatial redundancies. The temporal redundancy may arise from pictures which may appear to overlap in time over successive frames. The special redundancy may be determined from overlapped image patterns in a single frame.
As illustrated in FIG. 1, a conventional video codec (coder and/or decoder) may be comprised of frame memories 11, 13, and 15 for storing input picture data, a discrete cosine transformer (DCT) 17, an inverse DCT (IDCT) 23, a quantizer (Q) 19, an inverse quantizer (IQ) 21, a variable length coder (VLC) 29, a motion estimator (ME) 25, and a motion compensator (MC) 27.
The frame memory 11 may store input picture data which may be a current frame. The frame memory 13 may store picture data reconstructed prior to the current frame, which may be a reconstructed frame or a previous frame. The frame memory 15 may store picture data with being motion-compensated, which may be referred to as a motion-compensated frame.
In an inter-mode, motion compensation may be carried out in a macroblock (MB) which may have 16×16 pixels. The motion estimator 27 may obtain a motion vector by locating a motion vector substantially similar to a current macroblock, which may be read from the frame memory 11, in a reconstructed frame which may be stored in the frame memory 13.
The motion compensator 25 may obtain a motion-compensated frame from the motion vector provided by the motion estimator 27 and the previous frame provided by the frame memory 13. Image differential data, which may result from a variation between the motion-compensated frame provided by the frame memory 15 and the current frame provided by the frame memory 11, may be processed by the DCT 17 in a unit block of 8×8 pixels, and quantized through the quantizer 19. The quantized image differential data may be restored by the IDCT 21 and the inverse quantizer 23 and may be used in generating a reconstructed frame and/or the motion-compensated image data.
The VLC 29 may perform an entropy coding operation for the quantized image differential data and/or the motion vector.
An intra-mode may not process the motion compensation and a current frame which may be provided from the frame memory 11 may be processed by DCT processes and/or quantization and may be put into a variable length coding operation.
A conventional video codec may be associated with a common bus architecture shared by the plurality of data processing units such as the DCT, the IDCT, the quantizer, the inverse quantizer, the VLC, the motion estimator, and the motion compensator. Sharing data between the processing units may become more difficult and requirements for bandwidths of external memories may increase. Operations of the data processing units may be restricted by data volume operable on the common bus.